|
In automata theory, a deterministic pushdown automaton (DPDA or DPA) is a variation of the pushdown automaton . The DPDA accepts the deterministic context-free languages, a proper subset of context-free languages. Machine transitions are based on the current state and input symbol, and also the current topmost symbol of the stack. Symbols lower in the stack are not visible and have no immediate effect. Machine actions include pushing, popping, or replacing the stack top. A deterministic pushdown automaton has at most one legal transition for the same combination of input symbol, state, and top stack symbol. This is where it differs from the nondeterministic pushdown automaton. == Formal definition == A (not necessarily deterministic) PDA ''M'' can be defined as a 7-tuple: : where * is a finite set of states * is a finite set of input symbols * is a finite set of stack symbols * is the start state * is the starting stack symbol *, where is the set of accepting states * is a transition function, where : : where is the Kleene star, meaning that is "the set of all finite strings (including the empty string ) of elements of ", denotes the empty string, and is the power set of a set . ''M'' is ''deterministic'' if it satisfies both the following conditions: * For any , the set has at most one element. *For any , if , then for every There are two possible acceptance criteria: acceptance by ''empty stack'' and acceptance by ''final state''. The two are not equivalent for the deterministic pushdown automaton (although they are for the non-deterministic pushdown automaton). The languages accepted by ''empty stack'' are the languages that are accepted by ''final state'', as well as have no word in the language that is the prefix of another word in the language. 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Deterministic pushdown automaton」の詳細全文を読む スポンサード リンク
|